<?php
require_once ('Reactivo.class.php');
require_once ('RespuestaReactivoOpcionMultiple.class.php');
class ReactivoOpcionMultiple extends Reactivo {

	private $respuestas;

	public function toHtml() {
		$string = parent :: toHtml();
		//pendiente terminar este...
		$respuestas = "";
		foreach ($this->respuestas as $respuesta) {
			if ($this->getTipo() == '1')
				$respuestas .= "<li><input type='checkbox' value='" . $respuesta->getId() . "' name='" . $this->id . "_" . $this->tipo . "[]'>" . $respuesta->getRespuesta() . "</li>";
			else
				$respuestas .= "<li><input type='radio' value='" . $respuesta->getId() . "' name='" . $this->id . "_" . $this->tipo . "'>" . $respuesta->getRespuesta() . "</li>";
		}
		$string .= "<div class='respuestas'><ul>" . $respuestas . "</ul></div>";
		return $string;
	}

	public function toHtmlDisplay() {
		$string = parent :: toHtmlDisplay();
		$respuestas = "<li>Alternativas: </li><ul>";
		foreach ($this->respuestas as $respuesta) {
			if($respuesta->getCorrecto()==true)
				$respuestas .= "<li>".$respuesta->getRespuesta() . " [Opcion correcta]</li>";
			else
				$respuestas .= "<li>".$respuesta->getRespuesta() . "</li>";
		}
		$respuestas .= "</ul>";
		$string .= "<div class='respuestas'>" . $respuestas . "</div>";
		return $string;
	}

	public function addRespuesta(RespuestaReactivoOpcionMultiple $respuesta) {
		$this->respuestas[] = $respuesta;
	}

	public function deleteRespuesta($indice) {
		if (!is_numeric($indice)) {
			throw new Exception("Para borrar una respuesta se necesita un indice numerico.");
		}
		$this->respuestas = array_slice($this->respuestas, $indice, ($indice +1));
	}

	public function getRespuestas() {
		return $this->respuestas;
	}

	function ReactivoOpcionMultiple() {
	}
}
?>